package com.yk.mr.dao.cluster.api;

import com.yk.mr.model.cluster.ClusterModel;

import java.util.List;

/**
 * Project Name:cykspark
 * File Name:IClusterDao
 * Package Name:com.yk.spark.dao.cluster.api
 * Date:2017/9/20 10:31
 * Author:zhangju
 * Description:
 * Copyright (c) 2017, 重庆云凯科技有限公司 All Rights Reserved.
 */


public interface IClusterDao {
    /**
     * 获取所有集群信息
     *
     * @return 集群信息列表
     */
    List<ClusterModel> selectAll();

    /**
     * 分页获取集群信息
     *
     * @param start 起始位置
     * @param limit 最大结果数
     * @return 集群信息列表
     */
    List<ClusterModel> select(int start, int limit);

    /**
     * 查询记录总数
     *
     * @return 总记录数
     */
    Long total();

    /**
     * 根据clusterId 获取集群信息实体对象
     *
     * @param model 只包含clusterId 的集群信息实体对象
     * @return 集群信息实体对象
     */
    ClusterModel select(ClusterModel model);

    /**
     * 根据clusterName或ip模糊查询集群信息
     *
     * @param model 包含clusterName或ip的集群信息实体对象
     * @return 集群信息列表
     */
    List<ClusterModel> search(ClusterModel model);

    ClusterModel queryByClusterId(String clusterId);
}
